package com.yincheng.oes.business.exam.export.model;

import org.springframework.format.annotation.DateTimeFormat;

import java.util.Date;

/**
 *
 * @Author: yangsy
 * @Contact: 446948434@qq.com
 * @Date: 2021/6/23 19:31
 * @Version: 1.0
 * @Description: 测评分析报告请求参数
 */
public class ExportAnalysisParam implements Cloneable {

    /**
     * 试卷id
     */
    private String paperId;
    /**
     * 出入科试卷id
     */
    private String paperId1;

    /**
     * 出入科试卷id
     */
    private String paperId2;

    /**
     * 国家平均水平
     */
    private String countryAvg;

    /**
     * 修正目标水平
     */
    private String reviseScore;

    /**
     * 科目
     */
    private String subjectName;

    /**
     * 答卷时间起
     */
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    private Date submitStartTime;

    /**
     * 答卷时间止
     */
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    private Date submitEndTime;

    public String getPaperId() {
        return paperId;
    }

    public void setPaperId(String paperId) {
        this.paperId = paperId;
    }

    public String getPaperId1() {
        return paperId1;
    }

    public void setPaperId1(String paperId1) {
        this.paperId1 = paperId1;
    }

    public String getPaperId2() {
        return paperId2;
    }

    public void setPaperId2(String paperId2) {
        this.paperId2 = paperId2;
    }

    public String getCountryAvg() {
        return countryAvg;
    }

    public void setCountryAvg(String countryAvg) {
        this.countryAvg = countryAvg;
    }

    public String getReviseScore() {
        return reviseScore;
    }

    public void setReviseScore(String reviseScore) {
        this.reviseScore = reviseScore;
    }

    public String getSubjectName() {
        return subjectName;
    }

    public void setSubjectName(String subjectName) {
        this.subjectName = subjectName;
    }

    public Date getSubmitStartTime() {
        return submitStartTime;
    }

    public void setSubmitStartTime(Date submitStartTime) {
        this.submitStartTime = submitStartTime;
    }

    public Date getSubmitEndTime() {
        return submitEndTime;
    }

    public void setSubmitEndTime(Date submitEndTime) {
        this.submitEndTime = submitEndTime;
    }

    @Override
    public Object clone() {
        try {
            return super.clone();
        } catch (CloneNotSupportedException e) {
            e.printStackTrace();
        }
        ExportAnalysisParam param = new ExportAnalysisParam();
        param.setCountryAvg(countryAvg);
        param.setPaperId1(paperId1);
        param.setPaperId2(paperId2);
        param.setReviseScore(reviseScore);
        param.setSubjectName(subjectName);
        param.setSubmitEndTime(submitEndTime);
        param.setSubmitStartTime(submitStartTime);
        return param;
    }

    @Override
    public String toString() {
        return "ExportAnalysisParam{" +
                "paperId='" + paperId + '\'' +
                ", paperId1='" + paperId1 + '\'' +
                ", paperId2='" + paperId2 + '\'' +
                ", countryAvg='" + countryAvg + '\'' +
                ", reviseScore='" + reviseScore + '\'' +
                ", subjectName='" + subjectName + '\'' +
                ", submitStartTime=" + submitStartTime +
                ", submitEndTime=" + submitEndTime +
                '}';
    }
}
